作者查詢 / tinlans

總覽項目: 發文 | 留言 | 暱稱
作者 tinlans 在 PTT [ C_and_CPP ] 看板的留言(推文), 共3005則
限定看板:C_and_CPP
[問題] template funtion/class in dll
[ C_and_CPP ]34 留言, 推噓總分: +2
作者: Keitaro - 發表於 2025/04/09 22:46(8月前)
18Ftinlans: 在過去,template 的資訊在編譯後就完全消失了,這帶來了04/12 20:23
19Ftinlans: 很多不便,後來做 LTO 時各家編譯器開始設法保存原始碼的04/12 20:24
20Ftinlans: 資訊到編譯後的產物裡,這也是為什麼你會問到 modules04/12 20:25
21Ftinlans: 可以這樣的原因,但它本質上其實並沒有多少改變。04/12 20:26
22Ftinlans: 另外你的用語是有問題的,template 應該放在後面,兩個04/12 20:27
23Ftinlans: 名詞放在一起時是名詞修飾名詞,後面的名詞才是主體。04/12 20:27
24Ftinlans: class template、function template 這樣寫才對。04/12 20:28
25Ftinlans: 至於為什麼要強調這個?因為 template 在 C++ 就是一種04/12 20:28
26Ftinlans: 還沒有實體的骨架這樣的東西,需要被實體化。04/12 20:29
27Ftinlans: 你顛倒過來寫,如果不是英語不好,那就是基礎概念理解上04/12 20:31
28Ftinlans: 存在嚴重的誤區。04/12 20:31
29Ftinlans: 「相當於直接變成MyApp的header」這描述也很奇怪,header04/12 20:45
30Ftinlans: 的從屬性是跟著 project 走,所以你其它地方描述倒是沒啥04/12 20:45
31Ftinlans: 問題,只是 header 寫出來就是給人家 include 的,只要04/12 20:46
32Ftinlans: include 了就是用到了它,但從屬關係並不會因此改變。04/12 20:46
33Ftinlans: 不過這裡講的 header 從屬性是更抽象的概念,和 C++ 還有04/12 20:47
34Ftinlans: 它的編譯連結特性不存在任何關係。04/12 20:48
[問題] c structure 請教
[ C_and_CPP ]22 留言, 推噓總分: +1
作者: OnlyCourage - 發表於 2024/03/01 23:10(1年前)
6Ftinlans: C 語言的 struct definition 不會被編譯到 object file03/02 03:45
7Ftinlans: 裡面去,所以在 linking time 完全遺失這項資訊。03/02 03:45
8Ftinlans: 但你的問題主要不在於這件事上,而是你在 main.c 沒有告03/02 03:47
9Ftinlans: 知 compiler 說 DATA 這個 identifier 是什麼東西,缺乏03/02 03:47
10Ftinlans: 了 DATA 的 declaration。03/02 03:48
11Ftinlans: 又因為你在 main.c 嘗試存取 test.i 也就是 DATA 的成員03/02 03:49
12Ftinlans: ,此處需要 DATA 的 definition,否則 compiler 不知道 i03/02 03:50
13Ftinlans: 的 type 以及它的 address offset 是多少,所以報錯。03/02 03:51
14Ftinlans: 你遇到的問題不是 linking-time error 而是 compile-time03/02 03:55
15Ftinlans: error,所以一開始的思路就錯了,有些基礎需要重新加強。03/02 03:55
16Ftinlans: 宣告(declaration)和定義(definition)這兩個詞彙也得好好03/02 03:57
17Ftinlans: 重新理解,找不到適當的文章的話,問看看 ChatGPT。03/02 03:57
18Ftinlans: 另外,你對 extern 這個關鍵字的理解也有問題,它修飾的03/02 04:04
19Ftinlans: 對象是 test 不是 struct DATA test 整段,也不是 struct03/02 04:04
20Ftinlans: DATA,這只是告訴 compiler 說 test 被 define 在別處。03/02 04:05
[問題] c++ 繼承問題
[ C_and_CPP ]59 留言, 推噓總分: +15
作者: kakar0to - 發表於 2023/11/10 08:43(2年前)
43Ftinlans: 你先好好描述你正在解決什麼問題,不是要你描述為什麼要11/12 04:02
44Ftinlans: 用到這樣的語法或者語言機制上的需求,而是你的程式本身11/12 04:03
45Ftinlans: 是寫來替你達成什麼目的。這目的是那種講給非程式設計師11/12 04:05
46Ftinlans: 聽都聽得懂的那種,無關任何程式語言或語法。11/12 04:05
47Ftinlans: 你的情況比較像是拿電鋸在轉開螺絲,然後問大家如何用11/12 04:19
48Ftinlans: 電鋸把螺絲轉開,但大家都疑惑平常沒人拿電鋸去轉開螺絲11/12 04:19
49Ftinlans: ,因此必須從你一開始到底想幹嘛開始理解才行。11/12 04:20
50Ftinlans: 有可能講清楚以後,大家才知道你根本連轉開這螺絲都不必11/12 04:21
51Ftinlans: ,這樣建議你別用電鋸或改用螺絲起子都只是在浪費時間。11/12 04:22
52Ftinlans: 所以你先用地理老師都聽得懂的方式說明一下你正在幹嘛。11/12 04:28
Re: [分享] 物件導向 in C
[ C_and_CPP ]20 留言, 推噓總分: +2
作者: wjungle - 發表於 2023/08/29 09:24(2年前)
12Ftinlans: 這東西不是幾十年前侯捷就秀過一波了?08/29 20:36
Re: [討論] Rust與C++
[ C_and_CPP ]26 留言, 推噓總分: +14
作者: shyin7089 - 發表於 2023/06/27 09:02(2年前)
7Ftinlans: 可能近年都在寫交易系統的關係,06/28 01:45
8Ftinlans: 比起 Rust 我更關注 Carbon06/28 01:45
9Ftinlans: 如果還留在半導體業我大概也會直接押寶 Rust06/28 01:48
[問題] SFTP
[ C_and_CPP ]17 留言, 推噓總分: +7
作者: clv - 發表於 2023/06/06 01:09(2年前)
16Ftinlans: 幹嘛這麼排斥裝 lib,vcpkg 明明很好用,libssh2 裝一裝06/11 02:51
Fw: [閒聊] Linux Kernel 6: Rust lang 支援已刪文
[ C_and_CPP ]49 留言, 推噓總分: +15
作者: wtchen - 發表於 2022/10/08 15:49(3年前)
50Ftinlans: 把全國轉信板 programming 放哪裡了 XD10/14 10:45
[問題] python轉成c++問題
[ C_and_CPP ]23 留言, 推噓總分: +8
作者: Faker0613 - 發表於 2022/07/10 22:44(3年前)
12Ftinlans: 從大一開始寫 python,結果跟類別不熟? 我認識一個大陸07/13 02:24
13Ftinlans: 醫學院的學生,看 bilibili 一個禮拜學會 python 還會寫07/13 02:24
14Ftinlans: 類別,python 明明就有類別概念。07/13 02:24
[問題] atomic operation 與 計算效率問題
[ C_and_CPP ]20 留言, 推噓總分: +4
作者: eagle32 - 發表於 2022/05/24 22:35(3年前)
7Ftinlans: 主要還是看處理器架構,有些架構可以選用不同 memory05/25 02:20
8Ftinlans: model 來避免效能損失太嚴重。05/25 02:20
[問題] void* 轉型成 非指標型態
[ C_and_CPP ]14 留言, 推噓總分: +1
作者: anoymouse - 發表於 2022/04/28 10:38(3年前)
8Ftinlans: C++ 用 reinterpret_cast<> 轉,不用開 -fpermissive。04/29 09:03
9Ftinlans: 這 C API 典型的用法之一,傳的人不想去 heap 上配一塊就04/29 09:04
10Ftinlans: 直接轉型傳,翻 pthread_create() 的範例很容易找到。04/29 09:04