c++中explict
时间: 2024-05-25 11:17:17 浏览: 54
在 C 语言中,并没有像 C++ 中的 explicit 关键字。C 语言中的函数调用都是默认转换参数类型的,如果一个函数要求传入指针类型的参数,但是传入了一个整型常量,编译器会自动将整型常量转换为指针类型,这可能会导致一些不可预见的问题。因此,在 C 语言中,需要程序员手动进行类型转换,以确保传入的参数类型正确。
相关问题
explict c++
explict是C++11中的一个关键字,用于修饰构造函数,表示该构造函数不能进行隐式类型转换。
举个例子,如果有一个类A和一个函数foo,如下所示:
```
class A {
public:
A(int x) {}
};
void foo(A a) {}
int main() {
foo(1);
return 0;
}
```
这段代码会编译通过,因为int类型可以隐式转换为A类型。但是如果我们在A的构造函数前加上explicit关键字,如下所示:
```
class A {
public:
explicit A(int x) {}
};
void foo(A a) {}
int main() {
foo(1);
return 0;
}
```
这段代码就会编译失败,因为1不能隐式转换为A类型。
explict linkedlist
explicit linkedlist是指通过显式类型声明来创建LinkedList对象。在引用中的代码示例中,Main类中的lList()方法返回的就是一个explicit LinkedList对象。该方法使用泛型<T>来声明并返回一个LinkedList<T>对象,可以根据需要指定具体的类型参数来创建LinkedList对象。
阅读全文