Can structs have methods?

Asked by Last Modified  

3 Answers

Learn Java

Follow 2
Answer

Please enter your answer

Wroking in IT industry from last 15 years and and trained more than 5000+ Students. Conact ME

Yes, structs in languages like Go and C++ can have methods, but not in C.
Comments

I am online Quran teacher 7 years

A struct can also have static methods.
Comments

Developer and Computer Science graduate from Vellore Institute of Technology, Chennai, India

Yes, structs can have methods in C++, C#, and even C (with function pointers), but their behavior differs: C (No Direct Methods) C structs cannot have methods, but function pointers can be used as a workaround. c #include <stdio.h> typedef struct { int x, y; void (*print)(int, int);...
read more
Yes, structs can have methods in C++, C#, and even C (with function pointers), but their behavior differs: C (No Direct Methods) C structs cannot have methods, but function pointers can be used as a workaround. c #include <stdio.h> typedef struct { int x, y; void (*print)(int, int); } Point; void printPoint(int x, int y) { printf("Point: (%d, %d)\n", x, y); } int main() { Point p = {10, 20, printPoint}; p.print(p.x, p.y); return 0; } C++ (Structs Can Have Methods) C++ treats structs like classes (default access is public), allowing methods, constructors, destructors, and operator overloading. cpp #include <iostream> using namespace std; struct Point { int x, y; void print() { cout << "Point: (" << x << ", " << y << ")" << endl; } }; int main() { Point p = {10, 20}; p.print(); return 0; } C# (Structs Can Have Methods) C# structs support methods, properties, and constructors (except parameterless constructors). They cannot inherit from classes but can implement interfaces. csharp using System; struct Point { public int X, Y; public Point(int x, int y) { X = x; Y = y; } public void Print() { Console.WriteLine($"Point: ({X}, {Y})"); } } class Program { static void Main() { Point p = new Point(10, 20); p.Print(); } } Summary C: No direct methods, but function pointers can be used. C++: Structs behave like lightweight classes and support methods. C#: Structs can have methods, properties, and constructors, but no inheritance from classes. Each language uses structs differently based on its design principles. read less
Comments

View 1 more Answers

Related Questions

What is an Exception in Java?
We can Say Exception is an event which terminates the normal execution of a program
Piyush
0 0
5
What is serialization?
serialization is a storing the state of the object into the file
Shubham
Is Java a pure object-oriented programming language?
Java is often considered to be a "pure" object-oriented programming (OOP) language because it follows many principles of OOP. However, it does have some features that deviate from strict purity. For example,...
Shiv
0 0
5
What is the use of the "this" keyword in Java?
'this' refer the current instance of a class. You can get and set data members of current object using 'this' prefix inside there class data type.
Deepak
0 0
9

Now ask question in any of the 1000+ Categories, and get Answers from Tutors and Trainers on UrbanPro.com

Ask a Question

Related Lessons

What Is Applet & Its Life Cycle?
What is Applet & its life cycle?Applet is a Java programme that can be embedded into HTML page.Java Applet runs on the java enables web browsers such as Mozilla & Internet Explorer.Applets are...
I

Icreative Solution

0 0
0

COMPILATION AND INTERPRETATION
Compilation and Interpertation Process javac (compiler) java(interpreter)high level code - > compile - > bytecode - > interperted - > machine code Bytecode...

Mastering in Java Programming
Core java topics What is Java?Execution Model Of JavaBytecodeHow to Get Java?A First Java ProgramCompiling and Interpreting ApplicationsThe JDK Directory StructureUsing Eclipse Data types and Variables What...

Java: A Quick Overview
Not purely Object Oriented: It doesn't support multiple inheritence, it supports primitive data types and static members. Doesn’t support multiple inheritance: Reason is diamond problem i.e.,...

Final modifier in Java
Can’t change value of variable if marked as final. It is best practice to mark method parameter as final if its value will not changes. Variable must be initialize either using Initializer block...

Recommended Articles

Java is the most famous programming language till date. 20 years is a big time for any programming language to survive and gain strength. Java has been proved to be one of the most reliable programming languages for networked computers. source:techcentral.com Java was developed to pertain over the Internet. Over...

Read full article >

Java is the most commonly used popular programming language for the creation of web applications and platform today. Integrated Cloud Applications and Platform Services Oracle says, “Java developers worldwide has over 9 million and runs approximately 3 billion mobile phones”.  Right from its first implication as java 1.0...

Read full article >

In the domain of Information Technology, there is always a lot to learn and implement. However, some technologies have a relatively higher demand than the rest of the others. So here are some popular IT courses for the present and upcoming future: Cloud Computing Cloud Computing is a computing technique which is used...

Read full article >

Designed in a flexible and user-friendly demeanor, Java is the most commonly used programming language for the creation of web applications and platform. It allows developers to “write once, run anywhere” (WORA). It is general-purpose, a high-level programming language developed by Sun Microsystem. Initially known as an...

Read full article >

Looking for Java Training Classes?

Learn from the Best Tutors on UrbanPro

Are you a Tutor or Training Institute?

Join UrbanPro Today to find students near you