-4

我是一名编程学生,偶尔会遇到以下参考:通用 C,这是否意味着只是简单的经典 C?

“任何严肃软件中结构的通用 c/c++ 实现”

它通常出现在诸如此类的上下文中;我很确定我只是误读了诸如 (generic c)/c++ 而不是:generic (c/c++) 之类的引用。看起来它可能指的是一组库。感谢你的回复。

4

4 回答 4

3

没有“C/C++”这样的语言。

一般来说(双关语)意味着使用它的来源并不可信。这仍然适用于“通用 C”。

于 2013-03-06T09:58:22.273 回答
2

“任何严肃软件中结构的通用 c/c++ 实现”

:)

这不是关于通用 C 或通用 C++,而是关于可以用 C 或 C++ 编译的代码结构的通用实现。

这是英语的歧义。

于 2013-03-06T10:15:34.377 回答
1

我不认为对“通用 C”一词有一个完善的解释。它当然不是一个正式的或技术性的术语,所以你只需要尝试从上下文中推断出作者的意图。

我最好的猜测是它可能通常意味着非平台特定的 C,在这种情况下,它适用于 C++ 和 C 一样多。

于 2013-03-06T09:53:53.593 回答
0

通用方法的示例是

template<typename T, size_t N>
struct array {
    T e[N];
    T* begin() {return e;}
    T* end() {return e+N;}
    size_t size() const {return N;}
};
...
array<int, 2> a1 = {1, 2};
array<double, 2> a2 = {10.0, 2.0};

如您所见,数组定义与类型和大小无关。这样的结构/函数被命名为“通用”。因此,任何使用这种方法的技术都可以称为“通用”。

于 2013-03-06T10:03:15.367 回答